package psrc.logic.util;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class HashSHA256 {

	/**
	 * Retorna o hash SHA-256 de uma dada String param.
	 * 
	 * @param param O texto a ser codificado
	 * @return O hash SHA-256 de param
	 */
	public static String encode (String param){
		MessageDigest md = null;
		try {
			md = MessageDigest.getInstance("SHA-256");
		} catch (NoSuchAlgorithmException e) {
			e.printStackTrace();
		}
        md.update(param.getBytes());
 
        byte byteData[] = md.digest();
 
        //convert the byte to hex format
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < byteData.length; i++) {
         sb.append(Integer.toString((byteData[i] & 0xff) + 0x100, 16).substring(1));
        }
 
        return sb.toString();
 
	}
}
